class Solution:
    def canJump(self, nums: List[int]) -> bool:
      fast = 0
      for i in range(len(nums)):
           if fast==i and nums[i]==0 and i!=len(nums)-1:
               return False
           if fast>=len(nums)-1:
               return True
           fast = max(fast,i+nums[i])  